#ifndef SPRITE_H
#define SPRITE_H
//----------------------------------------------------------------
#include "Defines.h"
#include "Entity2D.h"
#include "Structs.h"
#include "Texture.h"
//----------------------------------------------------------------
namespace ns
{
	class ENGINE_API Sprite : public Entity2D
	{
	public:
		Sprite();
		~Sprite();

		void Draw(Renderer* renderer);
		void Clone(Sprite* sprite);
		
		void setTexture(Texture::Ptr texture);
		const Texture::Ptr getTexture();
		void setTextureArea(unsigned int uiPosX, unsigned int uiPosY, unsigned int uiWidth, unsigned int uiHeight); 
		

	private:
		TextureVertex m_TextureVertex[4];
		Texture::Ptr m_pTexture;
	};
	#include "Sprite.inl"
}
//----------------------------------------------------------------
#endif 
